package org.walklink.common.util.slidewin;

/**
 * 限流实现类
 *
 * @author lidishan
 */
public interface RateLimiter {
    
    /**
     * 是否要限流
     *
     * @return 是否超出限制
     */
    boolean isOverLimit();

    /**
     * 当前QPS总数值（也就是窗口期内的访问总量）
     *
     * @return 当前总请求量
     */
    int currentQps();

    /**
     * touch一下；增加一次访问量
     *
     * @return 访问
     */
    boolean visit();

}
